dit problem er at RegEx i php som standard er hvad man kalder "greedy". Dvs når du skriver (.+), (.*) eller (.?) vil den som standard vælge så 
mange tegn som muligt.
Tilføjer du et ? efter de to +-tegn i din kode vil de i stedet være "ungreedy" og dermed matche så få tegn som muligt.
Du kan også tilføje modifieren u for at gøre det ungreedy som standard 

Din RegEx skal altså se sådan her ud:
-  '/(\[url=)(.+?)(\])(.+?)(\[\/url\])/' => '<a href="\\2" target="_blank" title="\\4">\\4</a>', '/(\[URL=)(.+?)(\])(.+?)(\[\/URL\])/' => '<a href="\\2" target="_blank" title="\\4">\\4</a>'
 
Kan se du har valgt at lave en for lowercase og en for uppercase.. Lad være med det 

 hvad nu hvis folk skriver [uRl= eller [URl= eller lign, så har vi pludselig et problem. Tilføj i stedet i modifieren som gør den in-case-sensitive 
						
						
						
						
		
							Indlæg senest redigeret d. 14.01.2010 08:45 af Bruger #15344